package com.ljx.rabbit.service;

import com.ljx.rabbit.domain.dto.ItemCommentDTO;
import com.ljx.rabbit.domain.dto.ItemCommentPage;
import com.ljx.rabbit.domain.po.HeadGoods;
import com.ljx.rabbit.domain.po.Item;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ljx.rabbit.domain.vo.CommentChildrenVO;
import com.ljx.rabbit.domain.vo.CommentVO;
import com.ljx.rabbit.domain.vo.ItemVo;

import java.util.List;

/**
 * <p>
 * 商品 服务类
 * </p>
 *
 * @author author
 * @since 2025-01-21
 */
public interface IItemService extends IService<Item> {

    List<HeadGoods> getNewGoods(Integer limit);

    ItemVo getDetail(Long id);

    List<HeadGoods> getHotGoods(Long id,Integer type,Integer limit);

    List<HeadGoods> getRelevantGoods(Integer limit);



    List<CommentVO> getComments(ItemCommentPage itemCommentDTO);

    Long likeCommentById(String commentId);

    void replyComment(ItemCommentDTO commentDTO);

    List<CommentChildrenVO> getReplyComment(String commentId, Integer page, Integer pageSize);

    Long dislikeCommentById(String commentId);
}
